The invention is related to Internet Protocol (IP) telephony systems. More specifically, the invention is related to telephony devices and methods of routing telephony communications via an IP telephony system
When an IP telephony system receives an incoming communication, the communication can be routed through multiple elements of the IP telephony system before the call is either terminated to a customer telephony device, or passed off to another telephony system. In some instances, multiple ones of the elements which handle the incoming communication each generate a call detail record (CDR) containing various pieces of information about the communication. Each element that generates a CDR sends the CDR to a central CDR unit of the IP telephony system.
Also, a single element that is responsible for handing a communication can generate both a start CDR and a stop CDR for the communication. Thus, a single element may generate two CDRs for the communication, each of which include different items of information about the communication.
When multiple elements of an IP telephony system each generate a different CDR relating to the same communication, it is desirable for the CDR unit to match the different CDRs that are related to the same communication. Matching the various CDRs related to a single incoming communication is helpful in determining which elements of the IP telephony system were responsible for handling the communication, which can be helpful in troubleshooting when problems arise. Also, information collected from all of the CDRs can be useful in billing for the communication. Information contained in the various different CDRs also can be aggregated into a single final CDR for the communication, and the final CDR can be used for billing purposes, quality monitoring and assurance, and troubleshooting. For all these reasons, it is desirable to have systems and methods which can match multiple CDRs generated by different elements of the IP telephony system, but which all relate to the same communication.
In some instances, it is possible to link multiple different CDRs which have been created for the same telephony communication using call identification number information contained in the CDRs themselves. However, in some types of call flows, it is not possible to use the call identification number information in the CDRs to link all the CDRs that relate to a single communication.
In view of the foregoing, it is desirable to find an alternate method for linking a plurality of CDRs which have been generated by various elements of an IP telephony system, but which all relate to the same telephony communication.
Moreover, certain types of communication traffic will follow the same basic flow path through the elements of the IP telephony system. Although the actual physical devices that are used to carry each communication can vary from communication to communication, the basic flow paths are the same. It would be desirable to record the type of flow path that each communication follows in the final CDR that is created for the communication. However, determining the actual type of flow path that each communication follows can be difficult.